package runtime

import "wasm/core/IR"

func (f *Frame) runBinaryOp(vm *WasmInterpreter, ins *IR.Instruction) {
	switch ins.Op.Code {
	case IR.OPCi32_trunc_s_sat_f32:
	case IR.OPCi32_trunc_u_sat_f32:
	case IR.OPCi32_trunc_s_sat_f64:
	case IR.OPCi32_trunc_u_sat_f64:
	case IR.OPCi64_trunc_s_sat_f32:
	case IR.OPCi64_trunc_u_sat_f32:
	case IR.OPCi64_trunc_s_sat_f64:
	case IR.OPCi64_trunc_u_sat_f64:
	case IR.OPCmemory_init:
	case IR.OPCmemory_drop:
	case IR.OPCmemory_copy:
	case IR.OPCmemory_fill:
	case IR.OPCtable_init:
	case IR.OPCtable_drop:
	case IR.OPCtable_copy:
	case IR.OPCv128_const:
	case IR.OPCv128_load:
	case IR.OPCv128_store:
	case IR.OPCi8x16_splat:
	case IR.OPCi16x8_splat:
	case IR.OPCi32x4_splat:
	case IR.OPCi64x2_splat:
	case IR.OPCf32x4_splat:
	case IR.OPCf64x2_splat:
	case IR.OPCi8x16_extract_lane_s:
	case IR.OPCi8x16_extract_lane_u:
	case IR.OPCi16x8_extract_lane_s:
	case IR.OPCi16x8_extract_lane_u:
	case IR.OPCi32x4_extract_lane:
	case IR.OPCi64x2_extract_lane:
	case IR.OPCf32x4_extract_lane:
	case IR.OPCf64x2_extract_lane:
	case IR.OPCi8x16_replace_lane:
	case IR.OPCi16x8_replace_lane:
	case IR.OPCi32x4_replace_lane:
	case IR.OPCi64x2_replace_lane:
	case IR.OPCf32x4_replace_lane:
	case IR.OPCf64x2_replace_lane:
	case IR.OPCv8x16_shuffle:
	case IR.OPCi8x16_add:
	case IR.OPCi16x8_add:
	case IR.OPCi32x4_add:
	case IR.OPCi64x2_add:
	case IR.OPCi8x16_sub:
	case IR.OPCi16x8_sub:
	case IR.OPCi32x4_sub:
	case IR.OPCi64x2_sub:
	case IR.OPCi8x16_mul:
	case IR.OPCi16x8_mul:
	case IR.OPCi32x4_mul:
	case IR.OPCi8x16_neg:
	case IR.OPCi16x8_neg:
	case IR.OPCi32x4_neg:
	case IR.OPCi64x2_neg:
	case IR.OPCi8x16_add_saturate_s:
	case IR.OPCi8x16_add_saturate_u:
	case IR.OPCi16x8_add_saturate_s:
	case IR.OPCi16x8_add_saturate_u:
	case IR.OPCi8x16_sub_saturate_s:
	case IR.OPCi8x16_sub_saturate_u:
	case IR.OPCi16x8_sub_saturate_s:
	case IR.OPCi16x8_sub_saturate_u:
	case IR.OPCi8x16_shl:
	case IR.OPCi16x8_shl:
	case IR.OPCi32x4_shl:
	case IR.OPCi64x2_shl:
	case IR.OPCi8x16_shr_s:
	case IR.OPCi8x16_shr_u:
	case IR.OPCi16x8_shr_s:
	case IR.OPCi16x8_shr_u:
	case IR.OPCi32x4_shr_s:
	case IR.OPCi32x4_shr_u:
	case IR.OPCi64x2_shr_s:
	case IR.OPCi64x2_shr_u:
	case IR.OPCv128_and:
	case IR.OPCv128_or:
	case IR.OPCv128_xor:
	case IR.OPCv128_not:
	case IR.OPCv128_bitselect:
	case IR.OPCi8x16_any_true:
	case IR.OPCi16x8_any_true:
	case IR.OPCi32x4_any_true:
	case IR.OPCi64x2_any_true:
	case IR.OPCi8x16_all_true:
	case IR.OPCi16x8_all_true:
	case IR.OPCi32x4_all_true:
	case IR.OPCi64x2_all_true:
	case IR.OPCi8x16_eq:
	case IR.OPCi16x8_eq:
	case IR.OPCi32x4_eq:
	case IR.OPCf32x4_eq:
	case IR.OPCf64x2_eq:
	case IR.OPCi8x16_ne:
	case IR.OPCi16x8_ne:
	case IR.OPCi32x4_ne:
	case IR.OPCf32x4_ne:
	case IR.OPCf64x2_ne:
	case IR.OPCi8x16_lt_s:
	case IR.OPCi8x16_lt_u:
	case IR.OPCi16x8_lt_s:
	case IR.OPCi16x8_lt_u:
	case IR.OPCi32x4_lt_s:
	case IR.OPCi32x4_lt_u:
	case IR.OPCf32x4_lt:
	case IR.OPCf64x2_lt:
	case IR.OPCi8x16_le_s:
	case IR.OPCi8x16_le_u:
	case IR.OPCi16x8_le_s:
	case IR.OPCi16x8_le_u:
	case IR.OPCi32x4_le_s:
	case IR.OPCi32x4_le_u:
	case IR.OPCf32x4_le:
	case IR.OPCf64x2_le:
	case IR.OPCi8x16_gt_s:
	case IR.OPCi8x16_gt_u:
	case IR.OPCi16x8_gt_s:
	case IR.OPCi16x8_gt_u:
	case IR.OPCi32x4_gt_s:
	case IR.OPCi32x4_gt_u:
	case IR.OPCf32x4_gt:
	case IR.OPCf64x2_gt:
	case IR.OPCi8x16_ge_s:
	case IR.OPCi8x16_ge_u:
	case IR.OPCi16x8_ge_s:
	case IR.OPCi16x8_ge_u:
	case IR.OPCi32x4_ge_s:
	case IR.OPCi32x4_ge_u:
	case IR.OPCf32x4_ge:
	case IR.OPCf64x2_ge:
	case IR.OPCf32x4_neg:
	case IR.OPCf64x2_neg:
	case IR.OPCf32x4_abs:
	case IR.OPCf64x2_abs:
	case IR.OPCf32x4_min:
	case IR.OPCf64x2_min:
	case IR.OPCf32x4_max:
	case IR.OPCf64x2_max:
	case IR.OPCf32x4_add:
	case IR.OPCf64x2_add:
	case IR.OPCf32x4_sub:
	case IR.OPCf64x2_sub:
	case IR.OPCf32x4_div:
	case IR.OPCf64x2_div:
	case IR.OPCf32x4_mul:
	case IR.OPCf64x2_mul:
	case IR.OPCf32x4_sqrt:
	case IR.OPCf64x2_sqrt:
	case IR.OPCf32x4_convert_s_i32x4:
	case IR.OPCf32x4_convert_u_i32x4:
	case IR.OPCf64x2_convert_s_i64x2:
	case IR.OPCf64x2_convert_u_i64x2:
	case IR.OPCi32x4_trunc_s_sat_f32x4:
	case IR.OPCi32x4_trunc_u_sat_f32x4:
	case IR.OPCi64x2_trunc_s_sat_f64x2:
	case IR.OPCi64x2_trunc_u_sat_f64x2:
	case IR.OPCatomic_wake:
	case IR.OPCi32_atomic_wait:
	case IR.OPCi64_atomic_wait:
	case IR.OPCi32_atomic_load:
	case IR.OPCi64_atomic_load:
	case IR.OPCi32_atomic_load8_u:
	case IR.OPCi32_atomic_load16_u:
	case IR.OPCi64_atomic_load8_u:
	case IR.OPCi64_atomic_load16_u:
	case IR.OPCi64_atomic_load32_u:
	case IR.OPCi32_atomic_store:
	case IR.OPCi64_atomic_store:
	case IR.OPCi32_atomic_store8:
	case IR.OPCi32_atomic_store16:
	case IR.OPCi64_atomic_store8:
	case IR.OPCi64_atomic_store16:
	case IR.OPCi64_atomic_store32:
	case IR.OPCi32_atomic_rmw_add:
	case IR.OPCi64_atomic_rmw_add:
	case IR.OPCi32_atomic_rmw8_u_add:
	case IR.OPCi32_atomic_rmw16_u_add:
	case IR.OPCi64_atomic_rmw8_u_add:
	case IR.OPCi64_atomic_rmw16_u_add:
	case IR.OPCi64_atomic_rmw32_u_add:
	case IR.OPCi32_atomic_rmw_sub:
	case IR.OPCi64_atomic_rmw_sub:
	case IR.OPCi32_atomic_rmw8_u_sub:
	case IR.OPCi32_atomic_rmw16_u_sub:
	case IR.OPCi64_atomic_rmw8_u_sub:
	case IR.OPCi64_atomic_rmw16_u_sub:
	case IR.OPCi64_atomic_rmw32_u_sub:
	case IR.OPCi32_atomic_rmw_and:
	case IR.OPCi64_atomic_rmw_and:
	case IR.OPCi32_atomic_rmw8_u_and:
	case IR.OPCi32_atomic_rmw16_u_and:
	case IR.OPCi64_atomic_rmw8_u_and:
	case IR.OPCi64_atomic_rmw16_u_and:
	case IR.OPCi64_atomic_rmw32_u_and:
	case IR.OPCi32_atomic_rmw_or:
	case IR.OPCi64_atomic_rmw_or:
	case IR.OPCi32_atomic_rmw8_u_or:
	case IR.OPCi32_atomic_rmw16_u_or:
	case IR.OPCi64_atomic_rmw8_u_or:
	case IR.OPCi64_atomic_rmw16_u_or:
	case IR.OPCi64_atomic_rmw32_u_or:
	case IR.OPCi32_atomic_rmw_xor:
	case IR.OPCi64_atomic_rmw_xor:
	case IR.OPCi32_atomic_rmw8_u_xor:
	case IR.OPCi32_atomic_rmw16_u_xor:
	case IR.OPCi64_atomic_rmw8_u_xor:
	case IR.OPCi64_atomic_rmw16_u_xor:
	case IR.OPCi64_atomic_rmw32_u_xor:
	case IR.OPCi32_atomic_rmw_xchg:
	case IR.OPCi64_atomic_rmw_xchg:
	case IR.OPCi32_atomic_rmw8_u_xchg:
	case IR.OPCi32_atomic_rmw16_u_xchg:
	case IR.OPCi64_atomic_rmw8_u_xchg:
	case IR.OPCi64_atomic_rmw16_u_xchg:
	case IR.OPCi64_atomic_rmw32_u_xchg:
	case IR.OPCi32_atomic_rmw_cmpxchg:
	case IR.OPCi64_atomic_rmw_cmpxchg:
	case IR.OPCi32_atomic_rmw8_u_cmpxchg:
	case IR.OPCi32_atomic_rmw16_u_cmpxchg:
	case IR.OPCi64_atomic_rmw8_u_cmpxchg:
	case IR.OPCi64_atomic_rmw16_u_cmpxchg:
	case IR.OPCi64_atomic_rmw32_u_cmpxchg:
	}
}
